<?php
	/*
	 * Copyright 2009 Upskill.com.br
	 *
	 * Licensed under the Apache License, Version 2.0 (the "License");
	 * you may not use this file except in compliance with the License.
	 * You may obtain a copy of the License at
	 *
	 * http://www.apache.org/licenses/LICENSE-2.0
	 *
	 * Unless required by applicable law or agreed to in writing, software
	 * distributed under the License is distributed on an "AS IS" BASIS,
	 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
	 * See the License for the specific language governing permissions and
	 * limitations under the License.
 	 */
	class MySQL {
		
		// Atributos (constantes)
		private $HOST = "localhost";
		private $USER = "teste";
		private $PASSWORD = "teste";
		private $BASE = "teste";
		
		private $connection;
		
		/**
		 * Metodo para criar uma conexao com o banco
		 */
		public function connect(){
			// criando uma conexao com o banco
			$this->connection = mysql_connect($this->HOST, $this->USER, $this->PASSWORD);	
			// Selecionando a base 
			mysql_select_db($this->BASE, $this->connection);
		}
		
		
		public function disconnect(){
			mysql_close($this->connection);
		}
		
		/**
		 * Metodo para inserir um professor
		 *
		 * @param Um objeto professor
		 * @return true se o professor for inserido com sucesso
		 */
		public function insereProfessor($professor) {
			// Montando o SQL
			$sql = "INSERT INTO professor (nome, email) 
			VALUES ('".$professor->getNome()."','".$professor->getEmail()."')";
			
			// Debug
			// echo $sql;
			
			// Inserindo o professor no banco de dados
			return mysql_query($sql);			
		}
		
		
		public function listaProfessor() {
			
			// Criando o array de objetos professor
			$array = array();
			
			$sql = "select * from professor";
			
			$resultado = mysql_query($sql);
			
			while($linha = mysql_fetch_array($resultado, MYSQL_ASSOC)){
				
				// Dados do registro
				$id = $linha["professor_id"];
				$nome = $linha["nome"];
				$email = $linha["email"];
				
				// Instanciando o objeto professor
				$professor = new Professor($nome, $email);
				$professor->setId($id);
				
				// Colocando os objetos professor no final do array
				$array[] = $professor;
				
			}
			
			mysql_free_result($resultado);
			
			// Retornando o array de professores
			return $array;
		}
		
		
		public function recuperaProfessor($id){
		
			$sql = "select * from professor where professor_id=$id";
			
			$resultado = mysql_query($sql);
			
			while($linha = mysql_fetch_array($resultado, MYSQL_ASSOC)){
				
				// Dados do registro
				$id = $linha["professor_id"];
				$nome = $linha["nome"];
				$email = $linha["email"];
				
				// Instanciando o objeto professor
				$professor = new Professor($nome, $email);
				$professor->setId($id);
			}
			
			mysql_free_result($resultado);
			
			// Retornando um professor
			return $professor;
		}
		
		
		public function atualizaProfessor($professor){
			
			$sql = "update professor set nome='" . $professor->getNome() . "', 
			                             email='" . $professor->getEmail() . "' 
			                             where professor_id=" . $professor->getId();
			
			return mysql_query($sql);
		}
		
		public function excluirProfessor($id) {
			$sql = "delete from professor where professor_id=$id";
			return mysql_query($sql);
		}
		
	}

?>